#ifndef _TILE_H
#define _TILE_H

#include "common.h"
class Buildable;

class Tile
{
    public:
    Tile(sf::Vector2i coords);
    virtual ~Tile(){;}

    sf::Vector2i getCoordinates(){return coordinates;}

    virtual void tick(){;}

    void    setHeight(int height){this->height = height;}
    int     getHeight(){return height;}

    sf::Sprite* getSprite(){return &sprite;}

    void setHighlighted(bool b){highlighted = b;}
    bool isHighlighted(){return highlighted;}

    Buildable*  getChild(){return child;}
    void        setChild(Buildable* build){child = build;}

    private:
    sf::Vector2i coordinates;

    int         height;
    sf::Sprite  sprite;
    bool        highlighted;
    Buildable*  child;
};

#endif
